約 3,460,660 件
https://w.atwiki.jp/mywiki2010/
Android開発の個人的なメモ。 今のところ個人的メモ扱いなので、管理者以外の編集不可。 管理者のネットブック環境は現在ASUSのEeePC1000-HE。 アプリケーション開発編 Androidアプリケーションを開発するための情報 環境構築 Windows編 Window上にAndroidアプリケーション開発環境を構築する。 Android動作環境編 実機インストールやエミュレータ等、Android動作環境に関する情報 USBブートでAndroid USBブート可能なx86マシンでAndroidを動作させる。 ネットブック(EeePC)でAndroid ネットブック(EeePC)にAndroidをインストールする。 Ubuntu導入編 Android開発のためにUbuntu環境を構築させるための情報 ネットブック(EeePC)でデュアルブート WindowsXP編 ネットブックにUbuntu Netbook Remixをインストール。 インストール済みのWindowsXPも動作できるように、デュアルブート構成にする。 リンク Android Developers Android開発者向けの情報
https://w.atwiki.jp/memodroid/pages/26.html
SurfaceViewで表示した動画を再生中に拡大縮小する方法について。 ここでも似たような話が出ているが、再生中に変えるという話ならsetFixedSizeは使えない。 setFixedSizeは動的にサイズ変更するためのメソッドではないので。 ドキュメントより Make the surface a fixed size. It will never change from this size. 再生中に拡大縮小するには、SurfaceView自体に手を加える必要がある。 HT-03A(Android 1.6)とWebStation(Android 1.5互換)で確認 方法 1. onPreparedでSurfaceHolder.setFixedSizeを呼ぶ 2. SurfaceViewをLinearLayoutにaddView 3. LinearLayout.setGravity(Gravity.TOP); 4. 変更したいサイズでSurfaceView.setLayoutParams(new LinearLayout.LayoutParams(Width, Height)); 5. LinearLayoutに再描画用のViewを追加。例:LinearLayout_SurfaceView.addView(TmpLinearLayout, 0, new LinearLayout.LayoutParams(1, 1)); 6. サイズ変更のたびにTmpLinearLayoutの追加と削除を交互に行う サイズ変更だけなら4. だけでいいと普通は思うが、それだと動画の拡大縮小が画面に反映されない。 そのために強制的に拡大縮小の変更を画面に反映させるために、LinearLayoutにSurfaceViewを入れて重力を上に設定、その状態で上に大きさのあるViewを突っ込むとLinearLayoutを再描画せざるを得なくなる。 というかなり強引な方法でSurfaceViewの拡大縮小を画面に反映させている。 1. についてはWebStationだとsetFixedSizeを実行しないと画面の描画がおかしくなり拡大縮小ももちろん反映されないので、その対策。 ちなみにHT-03AだとSurfaceViewの親のLinearLayout.setLayoutParamsを呼ぶだけでSurfaceViewの拡大縮小ができたので、画面の描画関係は機種依存があるのかもしれない。 参考 SurfaceViewを使用して画面を拡大する方法について
https://w.atwiki.jp/cscd/pages/100.html
開発環境の構築 Andoid SDK+EclipseでJava開発するのが普通らしい。環境の構築方法は http //andante.in/i/ などを参照。 参考リンク 私が参考にしたAndroidアプリ開発情報をまとめてみました - もとまか日記乙 ここから参考になりそうなのを探すべし
https://w.atwiki.jp/is01rebuild/pages/31.html
make だけしてみました。(初期) インストール、起動までしてみました。(2010/12/28 01 47) まずは、repo sync して素の状態で make しただけ。 $export ANT_OPTS="-Xmx1024m" $export TARGET_ARCH_VARIANT=armv7-a-neon $export WITH_JIT=true $date maketime.txt $time make -j3 showcommands 2 1 | tee make.log $date maketime.txt 結果 real127m58.712s user140m8.540s sys40m32.730s $cat maketime.txt 2010年 12月 26日 日曜日 10 36 14 JST 2010年 12月 26日 日曜日 12 44 13 JST make エラーは出なかったようだ。 環境は 2.2r1.3 と同じでよいようだ。javac バージョンは次のを使用した。 javac 1.6.0_22 実機で動かすには? パッチ内容は 2.2_r1.3 と同じ。 [[init.rc]] は若干変更する必要がある。 out以下の init.rc を参考に変更箇所を反映させていけば、 2.2r1.3 から 2.3._1r1 に行けます。 コメント 画面の向きをLandscapeにする ソースのpackages/apps/Launcher2/AndroidManifest.xml のLine77、Line91の"screenOrientation"の値を「landscape」にしてビルドする。 -- (RO215) 2011-01-05 20 47 58 1.6の環境をコピーする際、"system/app"、"system/framework"、"data/app"、"data/system"は削除。 data/下は、"media"、"misc"、"property"、"ro"、"sb"、"synergy"をコピーしておけばOKだと思う。 その上から2.3.1_r1のビルドファイルをコピーする。 -- (RO215IS01) 2011-01-09 19 25 15 reldとkeystoreのエラーは、init.rcの該当serviceをコメントアウトすることで とりあえず対処できる。影響はわからないが・・・。 -- (RO215IS01) 2011-01-09 19 48 52 copybitエラーは、下記アドレスからNexusOne用ROMをダウンロードして、"system/lib/hw/copybit.qsd8k.so" をIS01の同フォルダにコピー、さらに"copybit.default.so"- "copybit.default.so.org"にリネームしてリブート すると収まる。微妙に描画速度も上がるかもしれない。他に良いライブラリが無いか要調査。 http //forum.xda-developers.com/showthread.php?p=10343410 -- (RO215IS01) 2011-01-09 19 58 57 keystoreのエラーは"/data/misc/keystore"のパーミッションを正しく設定することで解決した。 作成時にパーミッションを指定しておいても、改めてchownしないといけない・・・? -- (RO215IS01) 2011-01-09 22 55 57 ここのソースをダウンロード、標準のlibgrallocフォルダ(libgralloc-qsd8kではない)と差し替えたら少し早くなりました。 https //www.codeaurora.org/git/projects/qrd-gb-ssss-7225/repository/revisions/master/show/android/hardware/msm7k/libgralloc-qsd8k また、grallocの読み込み時にegl.cfgを要求されるので、次のようなファイルを作ってhogeに保存し、ファイルの位置をbuild/target/board/generic/BoardConfig.mkに記述する。 0 0 android 0 1 hoge #最初の0は表示ディスプレイ(0 Dafault)、2列目の0/1は実装形式(0 software/1 hardware)、3列目は認識タグ($TAG)。 #このファイルが読まれると、次の順でEGLライブラリが読まれる。 #/system/lib/egl/libGLES_$TAG.so #/system/lib/egl/lib{EGL|GLESv1_CM|GLESv2}_$TAG.so BoardConfig.mkには以下のように記述する。 BOARD_EGL_CFG = hoge/egl.cfg -- (RO215IS01) 2011-01-16 22 11 12 どこに書こうか迷ったのでココで。 build/target/board/generic/BoardConfig.mk に PRODUCT_LOCALES = ja_JP と記述することで、インストール直後から日本語になります。 ただ、2.3.1_r1だと非常に不安定・・・ -- (RO215IS01) 2011-01-18 15 09 52 名前 コメント すべてのコメントを見る
https://w.atwiki.jp/clashofkings/pages/72.html
Androidスマホ・タブレットを使っている方はこれが一番簡単。 サブアカウント作成方法 ゲーム画面左上の自分の画像をタップ ↓ 右下歯車のマークタップ ↓ アカウントをタップ ↓ NEWゲームをタップ ※NEWゲームを押す前に必ず今のアカウントが引き継ぎされているか確認。 万が一の場合に備えて、問い合わせように「帝国・自分の城の座標・城内施設のレベル」等を 控えておくことをおすすめします。 ↓ 新しくゲームを始めますか? 確定をタップ ↓ これでサブアカウントを作れます。 上記方法でサブアカウントは作成できます。 作られたばかりのアカウントは引き継ぎがされていません。 次は引き継ぎが必要になります。 事前にサブアカウント用のGoogleアカウントを用意しましょう。 Googleアカウントの作り方 ゲーム画面左上の自分の画像をタップ ↓ 右下歯車のマークタップ ↓ アカウントをタップ ↓ アカウント変更 ↓ Googleアカウント ↓ アカウントを追加 アカウント引き継ぎ方法 ゲーム画面左上の自分の画像をタップ ↓ 右下歯車のマークタップ ↓ アカウントをタップ ↓ 引き継ぎ ↓ Google引き継ぎ(以前に使用したGoogleアカウントで引き継ぎをするとそのデータに戻れないので注意) ↓ アカウントの画面に戻りアカウント状態が安全になっているか確認。 ↓ アカウント変更をタップで他のアカウントと切替可能。
https://w.atwiki.jp/android-memo/pages/18.html
同期方法 Android主体時の同期アプリ コメント 同期方法 方法 主体 非root WebDAV FTP SMB インターネット USB 自動同期 同期 任意ディレクトリ 速度 備考 ServersMan@Android Android ○ ○ × × ○ × × ─ ─ ★★ WebDAVでアクセスできるようにする。無線同期をしたいならこれが良い。F-05DではWebDAV経由でexternal_sdにアクセスできなかった。 Samba Filesharing Android × × × ○ ○ × × ─ ─ ★★(1.82MB/s程度) SMBでアクセスできるようにする。ServersManより安定性が高い。 SugarSync クラウド ○ × × × ○ × ○ ○ △ ★ 小容量のファイルを自動同期したい時に。 USBストレージ Android ○ × × × × ○ × ─ ─ ★★★(8.18MB/s程度) マスストレージでアクセスできるようにする。接続が面倒だが最速で確実。マスストレージでアクセスできない端末も存在するので注意。 DropBox クラウド ○ × × × ○ × ○ ○ × ★ SugarSyncの劣化版。 PCFileSync パソコン ○ × × × × × ○ × ○ ★★ 実際はミラーリングと双方向コピーしかできない。 ESファイルエクスプローラ Android ○ × ○ × × × × ─ ─ ★★ 有効にするまでの手順が面倒。 FolderSync パソコン, クラウド ○ ○ ○ ○ ○ × ○ ○ ○ ★★ あらゆるオンラインストレージから自宅のネットワークまで何でもサポートする。基本的にこれで良い。 Android主体時の同期アプリ 名称 FTP 同期 備考 SyncToy × ○ 定番。 Fire File Copy × × 同期ではなくミラーリング。 FastCopy × × 同期ではなくミラーリング。 コメント 名前 コメント
https://w.atwiki.jp/android2chbrowser/pages/37.html
■droid2ch ウェブページ 開発ブログ http //droid2ch.com/blog/ 配布先 http //droid2ch.com/ 画面 設定画面 動画 関連項目 Droid2ch関連のブログ記事 #blogsearch droid2chのTwitter #twitter_widget_profile ここを編集 最近のリンク元 申し訳ありませんが、recent_page_ref プラグインは提供を終了し、ご利用いただけません。
https://w.atwiki.jp/mywiki2010/pages/2.html
アクセス: - メニュー トップページ アプリケーション開発 環境構築 Windows編 Android動作環境編 USBブートでAndroid ネットブック(EeePC)でAndroid Ubuntu導入編 ネットブック(EeePC)でデュアルブート WindowsXP編 未整理情報 Androidアプリ作成中に困ったこと リンク 開発者向け情報 Android Developers Android入門 開発向けツール類 Eclipse公式サイトダウンロードページ アプリ入手 AndroLib.com docomo HT-03A 製品ページ 専門記事 Android Developers'Inn ITpro Android(アンドロイド) - @IT MONOist ここを編集
https://w.atwiki.jp/miottia/pages/37.html
Android罠(トラップ) コンテンツ Android罠(トラップ)コンテンツ 概要 リソース文字列リソースにサロゲートペアが必要な文字を使うと実行時エラー ウィジェットImageViewのsetAlphaが使えない 差分更新すると画面回転時に表示がおかしくなる ログに「FAILED BINDER TRANSACTION」と表示されて更新に失敗する SharedPreferences保存した文字列とgetString()した結果が一致しないことがある ImageViewsetScaleType()が機能しない Notificationステータスバーを引き下げた時のアイコンがバグる 動的に生成した画像が使用できない 概要 Androidのアプリ開発時に引っかかった罠についてのメモ リソース 文字列リソースにサロゲートペアが必要な文字を使うと実行時エラー 文字列リソースにBMP(基本多言語面)外の文字を\uでサロゲートペアとして記述すると実行時に致命的エラーになる例えばU+1F601を"\ud83d\ude01"と記述すると以下のエラーが発生する JNI WARNING NewStringUTF input is not valid Modified UTF-8 illegal start byte ~ ソース中の文字列リテラルとしてString s = "\ud83d\ude01"のように記述するのは問題ない U+10000以降の文字(Unicode絵文字など)をリソースにしたい場合は自前で処理が必要 ウィジェット ImageViewのsetAlphaが使えない Android 2.1未満ではRemoteViews経由で呼び出すとエラーになる バージョンを調べて投げないようにする制御が必要 // 2.2以降の場合のみ透明度を設定 if (Build.VERSION.SDK_INT Build.VERSION_CODES.ECLAIR_MR1) { views.setInt(viewId, "setAlpha", alpha); } 差分更新すると画面回転時に表示がおかしくなる 画面回転時などの画面復元は最後に受け取ったRemoteViewsのみ再送する仕様になっている模様 そのため常にウィジェット全体を更新するように実装する必要があるAPI 11以降ならAppWidgetManager#partiallyUpdateAppWidget()が使えるようだが…… 差分更新せずに大量の画像を表示する方法は一応存在する(下記参照) ログに「FAILED BINDER TRANSACTION」と表示されて更新に失敗する RemoteViewsにデータを載せすぎると発生する模様RemoteViews#setTextViewText()だとViewのIDとシリアライズした文字列が載る RemoteViews#setImageViewBitmap()だとViewのIDとシリアライズした画像(!)が載る 解決方法RemoteViewsを使いまわさず毎回生成する(内部をクリアするメソッドが無いため) 設定するデータ量を減らす(文字列なら表示される部分までで切る、画像なら縮小したり品質を下げる) RemoteViews#setImageViewBitmap()を使わないようにする(別の画像設定メソッドを使う)リソースはRemoteViews#setImageViewResource()を使う(画像リソースのIDしかデータが載らない) 動的な画像はRemoteViews#setImageViewUri()を使う(Uriしかデータが載らない) 動的な画像を大量に表示する方法(Yotsubaで使用)あらかじめ画像を端末内にファイルとして保存してからRemoteViews#setImageViewUri()を使う ファイルとして保存する場合はContext#openFileOutput()にContext.MODE_WORLD_READABLEを指定アプリとウィジェットは別プロセスで動くためこの設定をしないと画像が読めない 外部メモリ上ならアクセス権の制約は無いが外部メモリが必ず存在するとは限らないしユーザが画像を勝手に削除することも考えられる Context#getDir()でディレクトリを切って入れるのは不可(上記メソッドはパス区切り文字が使えない) いつ更新が完了するか分からないため画像を削除するタイミングには注意が必要 画像はBitmap.createScaledBitmap()で縮小しておく上記の通り端末内に保持しておく必要があるためサイズを減らす 不名誉だが「@SuppressLint("WorldReadableFiles")」で警告を抑制できる SharedPreferences 保存した文字列とgetString()した結果が一致しないことがある Strings with line feeds incorrectly restored from SharedPreferences テキストメモ(ウィジェット)で発生を確認EditViewの内容をそのままSharedPreferencesで読み書きしていた 保存した文字列の末尾が改行だった場合、読み込まれた文字列の末尾に半角スペース4個が追加されることがある比較的新しい端末で発生する発生する Android 4.4.2(Xperia Z3C), Android 5.0.2(Xperia Z3C) 発生しない Android 2.3.4(Xperia acro), Android 4.2.2(Xperia A) 必ず発生するわけではない(プロセスの生死が影響)発生したかを知るすべがないので発生した時だけ対応というロジックはできない 文字列以外の読み書きでは発生しない(改行を入れられないため) 対処方法保存時の文字列の末尾が改行でなければいいので、保存前に改行以外の文字列を連結し、読み込み後にその文字を削除すれば対応可能連結/削除するのは半角スペースでもOK ImageView setScaleType()が機能しない 画像設定系メソッドにはsetBackground*()とsetImage*()の2種類が存在するsetScaleType()などImageView固有の機能は後者で設定した画像にのみ有効 前者で設定しておいて何故効果がないのか悩んだ Notification ステータスバーを引き下げた時のアイコンがバグる 最後の設定としてsetLatestEventInfo()を呼ばないとおかしくなる模様 setLatestEventInfo()の後にアイコンを設定していたのが原因 動的に生成した画像が使用できない アイコンの設定にはリソースIDしか使えないため そのため月日のカレンダーや電池残量表示をしようとすると手間が掛かる電池残量なら101枚、カレンダーなら366枚(土日で色を変えるなら+366×2)も画像を作る必要がある
https://w.atwiki.jp/ohden/pages/963.html
Xperia XZ2 Compact(H8324) tips IPv6による通信不良 H8324を利用する際、IPv6は使わないこと。これはAndroid端末とAndroid OS、httpsプロトコル、ISPが関係する問題みたい。詳細は不明。 とりあえず、Android OS上からはIPv6の無効化はできないので、自宅ネットワークのIPv6を無効化するなどの対応が必要。 例えば、自宅でネットワークを組んでる場合、WiFiルーターを使ってたり、ISPから送られてきたルーターなり、ONUなりを使ってるハズ。こいつらのIPv6使ったinternet接続を無効化しておけば良い。環境によってやり方全然変わるから詳しくは書かない。 この原因として日本国内企業の特殊なIPv6網に原因があるらしい。2011年以前から継続... フレッツだけかと思ってたが、どうも特定ISPなどの条件下でau光などでも発生するらしい。 nuroでも起きた。て、上記の原因とは別件? とりあえず、 google playで更新に時間がやたらとかかる アプリ利用中に通信失敗してアラートが出る →個人的に確認したのはドラクエウォークやFFBE幻影戦争辺り のような症状があったらルーターなどの設定をIPv6は使わないってのに変えてみるのをオススメする。 更新日: 2020年06月12日 (金) 09時40分45秒 名前 コメント すべてのコメントを見る